Time series data may include data points that are measured over time. One example of generating time series data may be the recordation by a web server of the times when users access web pages. When a user visits a web page, a logging function in a web server may capture time series data that includes a time value and an identifier (e.g., pathname, etc.) for a particular web page within the web site. The captured time series data may then be analyzed by a web server administrator over periods of time. For example, the web server administrator may desire to determine the number of times a particular web page of a web site was visited over a specific time range (e.g., over the last week, etc.).
Time series data is typically stored in a relational database or a database where row scans are allowed. For example, each time a web page of a web site is visited, the web server can store data relating to the visit in a table of a relational database where each row in the table represents a separate visit to the web server. The first column of the table may store the actual time value and the second column of the table may store the pathname of the visited web page within the web site. If an administrator of the web site wants to know the number of times a particular web page was visited during a specified period of time, the administrator can formulate a query for (and ultimately issue the query to) the relational database that specifies the range of values for the specified time as well as the pathname of the web page. In response, the relational database can scan the rows of the table to determine how many entries have time values (e.g., first column values) within the time range and have a pathname (e.g., second column values) corresponding to the web page. The number of times the web page was visited within the time frame then equals the number of determined rows from the query. While allowing arbitrary time ranges to be queried is useful, storing data in a relational database may have disadvantages, such as scalability and operational complexity.